package com.pinyougou.shop.controller;

import entity.ResultInfo;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import util.FastDFSClient;

@RestController
public class UploadController {

    @Value("${FILE_SERVER_URL}")
    private String FILE_SERVER_URL;//文件服务器地址

    @RequestMapping("/upload")
    public ResultInfo upload(MultipartFile file){

        //1.获取文件扩展名
        String originalFilename = file.getOriginalFilename();
        String extName = originalFilename.substring(originalFilename.lastIndexOf(".") + 1);

        try {
            //2.创建一个FastDFS客户端
            FastDFSClient fastDFSClient = new FastDFSClient("classpath:config/fdfs_client.conf");
            //3.执行上传处理
            String path = fastDFSClient.uploadFile(file.getBytes(), extName);
            //4.拼接返回的 url 和 ip 地址,拼接成完整的url
            String url = FILE_SERVER_URL + path;

            return new ResultInfo(true,url);
        } catch (Exception e) {
            e.printStackTrace();
            return new ResultInfo(false,"上传失败1");
        }
    }
}
